home *** CD-ROM | disk | FTP | other *** search
/ .net - The Best of 1999/2000 / netCD Special01.iso / pc / Software / M3Gate / m3stp03.exe / data1.cab / Example_Files / shares / shares.wmls < prev   
Encoding:
Text File  |  2000-05-22  |  5.0 KB  |  192 lines

  1. /*
  2.  * shares.wmls  -- WMLScript Module for Shares
  3.  */
  4.  
  5. extern function Init()
  6. {
  7.    WMLBrowser.setVar("cash", "100");
  8.  
  9.    WMLBrowser.setVar("ladogaNumber", "0");
  10.    WMLBrowser.setVar("moscowNumber", "0");
  11.    WMLBrowser.setVar("vostokNumber", "0");
  12.  
  13.    WMLBrowser.setVar("ladogaPrice", "5.12");
  14.    WMLBrowser.setVar("moscowPrice", "4.15");
  15.    WMLBrowser.setVar("vostokPrice", "2.1");
  16.  
  17.    WMLBrowser.setVar("ladogaSum", "0");
  18.    WMLBrowser.setVar("moscowSum", "0");
  19.    WMLBrowser.setVar("vostokSum", "0");
  20.  
  21.    Lang.seed(-1);
  22.    for (n = 0; n < 100; n++)
  23.    {
  24.       Lang.random();
  25.    }
  26.  
  27.    WMLBrowser.setVar("turn", "0");
  28.    WMLBrowser.go("shares.wml#cMain");
  29. };
  30.  
  31. extern function MakeTurn()
  32. {
  33.    turn = Lang.parseInt(WMLBrowser.getVar("turn"));
  34.    turn++;
  35.    ladogaPrice = Lang.parseFloat(WMLBrowser.getVar("ladogaPrice"));
  36.    moscowPrice = Lang.parseFloat(WMLBrowser.getVar("moscowPrice"));
  37.    vostokPrice = Lang.parseFloat(WMLBrowser.getVar("vostokPrice"));
  38.    
  39.  
  40.    n = (Lang.random(200) - 100) / 100;
  41.    if (ladogaPrice < 1)
  42.    {
  43.       ladogaPrice += Lang.abs(n);
  44.    }
  45.    else
  46.    {
  47.       ladogaPrice += n;
  48.    }
  49.  
  50.    n = (Lang.random(200) - 100) / 1000;
  51.    if (moscowPrice < 1)
  52.    {
  53.       moscowPrice += Lang.abs(n);
  54.    }
  55.    else
  56.    {
  57.       moscowPrice += n;
  58.    }
  59.  
  60.    n = (Lang.random(200) - 100) / 100;
  61.    if (vostokPrice < 1)
  62.    {
  63.       vostokPrice += Lang.abs(n);
  64.    }
  65.    else
  66.    {
  67.       vostokPrice += n;
  68.    }
  69.  
  70.    WMLBrowser.setVar("ladogaPrice", String.toString(ladogaPrice));
  71.    WMLBrowser.setVar("moscowPrice", String.toString(moscowPrice));
  72.    WMLBrowser.setVar("vostokPrice", String.toString(vostokPrice));
  73.    WMLBrowser.setVar("turn", String.toString(turn));
  74.    RefreshShares();
  75.    WMLBrowser.go("shares.wml#cMain");
  76. };
  77.  
  78. extern function InitBuy(sharesName, goString)
  79. {
  80.    WMLBrowser.setVar("name", sharesName);
  81.    afterBuy = "shares.wml#" + goString;
  82.    RefreshShares();
  83.    WMLBrowser.setVar("afterBuy", afterBuy);
  84.    WMLBrowser.go(afterBuy);      
  85. };
  86.  
  87. extern function Buy_Sell(sharesName, sharesNumber, operation)
  88. {
  89.    afterBuy = WMLBrowser.getVar("afterBuy")
  90.    cash = Lang.parseFloat(WMLBrowser.getVar("cash"))
  91.    ladogaNumber = Lang.parseInt(WMLBrowser.getVar("ladogaNumber"))
  92.    moscowNumber = Lang.parseInt(WMLBrowser.getVar("moscowNumber"))
  93.    vostokNumber = Lang.parseInt(WMLBrowser.getVar("vostokNumber"))
  94.  
  95.    ladogaPrice = Lang.parseFloat(WMLBrowser.getVar("ladogaPrice"))
  96.    moscowPrice = Lang.parseFloat(WMLBrowser.getVar("moscowPrice"))
  97.    vostokPrice = Lang.parseFloat(WMLBrowser.getVar("vostokPrice"))
  98.  
  99.    number = Lang.parseInt(sharesNumber);
  100.    if (sharesName == "Ladoga")
  101.    {
  102.       if (operation == "buy")
  103.       {          
  104.          if (number * ladogaPrice > cash)
  105.          {
  106.             number = Float.int(cash/ladogaPrice);   
  107.          }
  108.          ladogaNumber += number;
  109.          cash -= number * ladogaPrice;
  110.       }
  111.       else
  112.       {
  113.          if (number > ladogaNumber)
  114.          { 
  115.             number = ladogaNumber;
  116.          }
  117.          ladogaNumber -= number;
  118.          cash += number * ladogaPrice;
  119.       }
  120.       WMLBrowser.setVar("ladogaNumber", String.toString(ladogaNumber))
  121.    }
  122.  
  123.    if (sharesName == "Vostok")
  124.    {
  125.       if (operation == "buy")
  126.       {
  127.          if (number * vostokPrice > cash)
  128.          {
  129.             number = Float.int(cash/vostokPrice);   
  130.          }
  131.          vostokNumber += number;
  132.          cash -= number * vostokPrice;
  133.       }
  134.       else
  135.       {
  136.          if (number > vostokNumber)
  137.          { 
  138.             number = vostokNumber;
  139.          }
  140.          vostokNumber -= number;
  141.          cash += number * vostokPrice;
  142.       }
  143.       WMLBrowser.setVar("vostokNumber", String.toString(vostokNumber))
  144.    }
  145.  
  146.    if (sharesName == "Moscow")
  147.    {
  148.       if (operation == "buy")
  149.       {
  150.          if (number * moscowPrice > cash)
  151.          {
  152.             number = Float.int(cash/moscowPrice);   
  153.          }
  154.          moscowNumber += number;
  155.          cash -= number * moscowPrice;
  156.       }
  157.       else
  158.       {
  159.          if (number > moscowNumber)
  160.          { 
  161.             number = moscowNumber;
  162.          }
  163.          moscowNumber -= number;
  164.          cash += sharesNumber * moscowPrice;
  165.       }
  166.       WMLBrowser.setVar("moscowNumber", String.toString(moscowNumber))
  167.    }
  168.  
  169.    WMLBrowser.setVar("cash", String.toString(cash))
  170.  
  171.    RefreshShares();
  172.    WMLBrowser.go(afterBuy);      
  173. };
  174.  
  175. extern function RefreshShares()
  176. {
  177.    ladogaSum = Lang.parseInt(WMLBrowser.getVar("ladogaNumber"));
  178.    ladogaSum *= Lang.parseFloat(WMLBrowser.getVar("ladogaPrice"));
  179.    WMLBrowser.setVar("ladogaSum", String.toString(ladogaSum));
  180.  
  181.    moscowSum = Lang.parseInt(WMLBrowser.getVar("moscowNumber"));
  182.    moscowSum *= Lang.parseFloat(WMLBrowser.getVar("moscowPrice"));
  183.    WMLBrowser.setVar("moscowSum", String.toString(moscowSum));
  184.  
  185.    vostokSum = Lang.parseInt(WMLBrowser.getVar("vostokNumber"));
  186.    vostokSum *= Lang.parseFloat(WMLBrowser.getVar("vostokPrice"));
  187.    WMLBrowser.setVar("vostokSum", String.toString(vostokSum));
  188.    WMLBrowser.setVar("cont", "0");
  189. };
  190.  
  191.  
  192.